import { createStore } from 'vuex'
import createPersistedstate from 'vuex-persistedstate'

import user from './modules/user'
import cart from './modules/cart'
import category from './modules/category'

export default createStore({
    modules: {
        user,
        cart,
        category
    },
    /*  ===> 默认是存储在localStorage中
        ===> key是存储数据的键名
        ===> paths是存储state中的那些数据，如果是模块下具体的数据需要加上模块名称，如user.token
        ===> 修改state后触发才可以看到本地存储数据的的变化。 
    */
    plugins: [
        createPersistedstate({
            key: 'erabbit-client-pc-store', //本地存储的名字
            paths: ['user', 'cart'] //需要本地存储的模块
        })
    ]
})